﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using liclSolcred.Views;
using com.creditos.be.liclSolcred;
using com.creditos.util.liclUtil;
using com.creditos.be.liclUtil;
using com.creditos.be.liclVerifica;

public partial class solcred_FormsConBandejaPendienteAprobacion : CreditosPaseBase, IFormsPendienteAprobacionView
{
    private FormsPendienteAprobacionPresenter oPresenter = new FormsPendienteAprobacionPresenter();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!this.IsPostBack)
        {
            oPresenter.View = this;            
            oPresenter.ListarParametros(1);
            InsertarSeleccione();
            Master.TituloModulo = "Bandeja pendiente de aprobación";            
            UCBarraHerramientas1.btnBuscar.Visible = true;
            UCBarraHerramientas1.btnRegresar.Visible = true;
            if (Request.QueryString["tipo"] == "1")
            {            
                Master.TituloModulo = "Evaluar Solicitud de Crédito";
            }
        }
        oPresenter.View = this;
    }
        
    protected override void DefineHandlers()
    {
        this.rbtDatosPersonales.Attributes.Add("onClick", "javascript:PersonaNaturalOnClick('2');");
        this.rbtTipoDocumento.Attributes.Add("onClick", "javascript:PersonaNaturalOnClick('1');");
        UCBarraHerramientas1.btnBuscar.Click += new EventHandler(btnBuscar_Click);
        UCBarraHerramientas1.btnRegresar.Click += new EventHandler(btnRegresar_Click);       
    }


    public void InsertarSeleccione()
    {
        List<Control> lstControles = new List<Control>();
        lstControles = Utilitario.ListarControles(Page, 2);
        foreach (Control item in lstControles)
        {
            UIBindable.InsertarSeleccionar((DropDownList)item);
        }
    }

    void btnBuscar_Click(object sender, EventArgs e)
    {
        gvwLista.DataSource = null;
        gvwLista.DataBind();
        ApruebaBE oAprueba = new ApruebaBE();
        oAprueba.TipoBusqueda = rbtDatosPersonales.Checked ? 2 : 1;
        oAprueba.CodigoTipoDocumento = int.Parse(Utilitario.DarFormatoEnteroCero(ddlTipoDocumento.SelectedValue));
        oAprueba.NumeroDocumento = txtNroDoc.Text;
        oAprueba.ApellidoPaterno = txtApePat.Text;
        oAprueba.ApellidoMaterno = txtApeMat.Text;
        oAprueba.Nombres = txtNombre.Text;
        oPresenter.ObtenerListaSolicitudesXAprobar(oAprueba);
         if (rbtDatosPersonales.Checked)
        {
            ddlTipoDocumento.Enabled = false;
            txtNroDoc.Enabled = false;
            txtApePat.Enabled = true;
            txtApeMat.Enabled = true;
            txtNombre.Enabled = true;
        }
        else 
        {
             txtApePat.Enabled=false;
             txtApeMat.Enabled=false;
             txtNombre.Enabled=false;
             ddlTipoDocumento.Enabled = true;
             txtNroDoc.Enabled = true;
        }
        
    }

    void btnRegresar_Click(object sender, EventArgs e)
    {
        Response.Redirect("../FormsPrincipal.aspx");      
    }
    protected void NumeroSolicitud_Click(object sender, EventArgs e)
    {
        LinkButton button = (LinkButton)sender;
        string NroSolicitud = button.CommandArgument.ToString();


        if (Request.QueryString["tipo"] == "1")
        {
            string url = "FormsManSolicitud.aspx?NroSol=" + NroSolicitud + "&tipo=1";
            string script = "window.location = '" + url + "';";
            ScriptManager.RegisterStartupScript(this, typeof(Page), "RedirectTo", script, true);
        }

        else {
            string url = "FormsManSolicitud.aspx?NroSol=" + NroSolicitud;
            string script = "window.location = '" + url + "';";
            ScriptManager.RegisterStartupScript(this, typeof(Page), "RedirectTo", script, true);
        }
        

    }


    #region IFormsPendienteAprobacionView Members

    public void CargarParametros(List<com.creditos.be.liclUtil.ParametroBE> lstParametro)
    {
        if (lstParametro.Count > 0)
        {
            UIBindable.Bind(ddlTipoDocumento, lstParametro);
        }
    }

    public void MostrarMensajeError(string p)
    {
        Master.MostrarMensaje(p, 0);
    }

    public void CargarListaSolicitudesXAprobar(List<ApruebaBE> lst)
    {
        if (lst.Count > 0)
            UIBindable.Bind(gvwLista, lst);
        else MostrarMensajeError("No se encontraron coincidencias");
    }

    public void CargarProductos(List<ProductoBE> lstProductos)
    {
        throw new NotImplementedException();
    }

    public void CargarSubProductos(List<SubProductoBE> lstSubProductos)
    {
        throw new NotImplementedException();
    }

    public void CargarListaResultadoReglas(List<ApruebaBE> lst)
    {
        throw new NotImplementedException();
    }

    public void CargarCaluloTasa(Tasa tasa)
    {
        throw new NotImplementedException();
    }

    #endregion
}
